//
//  GeneralTools.h
//  KnowFish
//
//  Created by 王俊杰 on 2019/6/11.
//  Copyright © 2019 赵卫军. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN

@interface GeneralTools : NSObject

/**
 根据颜色生成一张图片

 @param color 颜色
 @param size size
 @return uiimage
 */
+ (UIImage *)createImageFromColor:(UIColor *)color size:(CGSize)size;

/**
 跳转到系统应用设置的某个页面

 @param scheme scheme
 @param options options
 */
+ (void)openScheme:(NSString *)scheme options:(NSDictionary*)options;

/**
 验证身份证号码

 @param idCardString 身份证号
 @return YES or NO
 */
+ (BOOL)verifyIDCardString:(NSString *)idCardString;

/**
 邮箱验证

 @param zipCode 邮箱
 @return YES or NO
 */
+ (BOOL) validateZipCode:(NSString *)zipCode;


/**
 手机号码验证

 @param mobileNum 手机号码
 @return  YES or NO
 */
+ (BOOL)validateContactNumber:(NSString *)mobileNum;

/**
 银行卡号验证

 @param string 银行卡号
 @return YES or NO
 */
+ (BOOL)isBlankString:(NSString *)string;
/**
 给某个view顶部添加阴影

 @param theView view
 @param theColor 阴影颜色
 */
+ (void)addShadowToView:(UIView *)theView withColor:(UIColor *)theColor;

/**
 某个字符串进行UTF8编码

 @param str 编码前str
 @return 编码后str
 */
+ (NSString *)encodeUTF8:(NSString *)str;

/**
 给手机号码中间4位变成*

 @param mobile 手机号码
 @return 有*的手机号码
 */
+ (NSString *)mobileDifXING:(NSString *)mobile;

/**
 md5加密

 @param str 加密前字符串
 @return 加密后字符串
 */
+ (NSString*)md5:(NSString *)str;

/**
 获取字符串的宽度

 @param value 字符串
 @param fontSize 字体大小
 @param height 高度
 @return 宽度
 */
+ (float)widthForString:(NSString *)value fontSize:(float)fontSize andHeight:(float)height;

/**
 获取字符串的高度

 @param value 字符串
 @param fontSize 字体大小
 @param width 宽度
 @return 高度
 */
+ (float)heightForString:(NSString *)value fontSize:(float)fontSize andWidth:(float)width;

/**
 获取手机型号

 @return 手机型号
 */
+ (NSString*)deviceVersion;
@end

NS_ASSUME_NONNULL_END
